1. Technical Field
The present invention relates generally to an improved data processing system, and in particular to an improved storage architecture in a data processing system. Still more particularly, the present invention relates to a method and apparatus for providing a spare storage device in a data processing system.
2. Description of the Related Art
In data processing systems, inexpensive high performance, high reliability memory is desirable. It is expensive to provide high reliability capability for various memory devices that are used within a data processing system. The problem becomes especially severe in the case of disk drive memory systems. Large disk drives capable of storing over one gigabyte of data are available. The processor in the data processing system stores data files on the disk drive memory by writing the data for all files onto a single disk drive. The failure of such a single disk drive can result in the loss of significant amounts of data. Disk drives are built to be high reliability units to minimize the possibility of this catastrophic loss of data. The cost of reliability is high in that the cost of the disk drive is expensive.
In critical situations, where the loss of data stored on the drive could cause a significant disruption in the operation of the processor in the data processing system, additional reliability may be obtained by disk shadowing or backing up each disk drive with an additional redundant disk drive. The provision of a second disk drive, however, to back up the primary disk drive will typically more than double the cost of storage for the data processing system. Various storage architectures have been presented to reduce the cost of providing disk shadowing backup protection. One architecture involves storing only changes that are made to the data stored on the disk drive and backing up only the most critical data stored on the disk drive and only periodically backing up data that is stored on the disk drive by storing it on a much less expensive data storage unit that also has a much slower data retrieval access time.
Another alternative includes using a number of smaller sized disk drives interconnected in a parallel array. In such a system, the microprocessor in the data processing system views the array of storage devices as a very large logical storage device with logical tracks thereon. Each logical track would be many times larger than any physical track extent of any of the physical storage devices forming the array. Such an architecture is often referred to as a direct access storage device (DASD) array, which includes a set of synchronously selected and operated DASDs.
One particular form of a DASD array is a redundant array of inexpensive disks (RAID) storage system, which has emerged as an alternative to large, expensive disk drives for use within data processing systems. Five different RAID levels are described in an article entitled "A Case For Redundant Arrays of Inexpensive Disks (RAID)" by David Patterson, et al., University of California Berkeley Report, No. UCD/CSD 87/391, December 1987. In traditional RAID systems, configurations typically involve one or two controllers that share drives in a protected environment. In this environment, disk drives are managed fairly simply because they are easily identified with the subsystem to which they are attached.
For example, in U.S. Pat. No. 5,210,866, to Milligan, et al., a parallel disk drive array data storage system 100 is shown in FIG. 1 in which spare disk drives 125-1 to 125-R are switchably interconnectable in place of a failed disk drive, such as disk drives 122-1 to 122-n+m. These spare disk drives are also called "hot spare devices" (HSD).
Such an architecture provides for higher availability of data to the user, as well as high performance as a result of a quicker return to optimal redundancy modes after a device failure. Many data processing systems, however, contain more than one disk drive subsystem. Each of these disk drive subsystems presently require HSDs to be designated within each subsystem. It is desirable, however, to have as few HSDs as possible within a data processing system containing multiple storage device subsystems.
Therefore, it would be advantageous to have an improved method and apparatus for providing redundancy in a data processing system while minimizing the number of HSDs required.